# 形状匹配

# 算法介绍

本算法用于在检测图像中匹配到与模板边缘相似的一个或多个图像位置,并据此移动产品位置,从而实现产品定位,适用于检测偏移和旋转。

# 算法使用流程图

# 算法参数介绍

1. 模板位置X: 模板X方向坐标,根据选择的模板自动生成,可手动修改;
2. 模板位置Y: 同模板位置X;
3. 边缘低阈值: 可检测到的边缘点的最小灰度值;
4. 边缘高阈值: 可检测到的边缘点的最大灰度值;
5. 重置模板区域: 单击可重新进行模板区域的选取调整;
6. 重置边缘点: 单击可重置模板的边缘点;
7. 编辑边缘点: 单击可调整模板的边缘点;
8. 查找数量: 可检测到的形状相似的产品数量;
9. 最小相似度: 此值为识别出来的形状高于模板的最小值,则为OK;
10. 相似度贪婪值: 使用贪婪搜索策略时,小于相似度贪婪值时会跳过一个大步进以加快检测速度,大于时会小步进精准查找;
11. 金字塔层数: 类似缩小倍率,值越低匹配越准确,但消耗时间越长;
12. 起始角度: 可以减少搜索范围,加快运算速度;
13. 终止角度: 可以减少搜索范围,加快运算速度;
14. 角度高步进: 可以减少搜索次数,加快运算速度;
15. 角度低步进: 可以减少搜索次数,加快运算速度;
16. 基准点X坐标: 基于抓取的图像设置基准点X坐标位置,可手动输入也可鼠标捕获;
17. 基准点Y坐标: 基于抓取的图像设置基准点X坐标位置,可手动输入也可鼠标捕获;
18. 基准点(鼠标取点): 基于抓取的图像,使用鼠标捕获基准点,尽量取产品中心来定;
19. 边缘对比度阈值: 设置边缘的对比度高低阈值,设置完之后预览边缘看是否能将产品边缘点映射出;
20. 合格标准: 在检测区域中匹配到模板后,并且旋转角度在限定范围内为合格,旋转角度在限定范围外则不合格;
其余参数默认即可,参数设置位置如下图所示:

# 形状匹配算法实际应用场景

一些形状有规律或对称的产品需要精准定位(如齿轮,螺丝槽等);